(0) Obligation:

Runtime Complexity TRS:
The TRS R consists of the following rules:

incr(nil) → nil
incr(cons(X, L)) → cons(s(X), n__incr(activate(L)))
adx(nil) → nil
adx(cons(X, L)) → incr(cons(X, n__adx(activate(L))))
natsadx(zeros)
zeroscons(0, n__zeros)
head(cons(X, L)) → X
tail(cons(X, L)) → activate(L)
incr(X) → n__incr(X)
adx(X) → n__adx(X)
zerosn__zeros
activate(n__incr(X)) → incr(activate(X))
activate(n__adx(X)) → adx(activate(X))
activate(n__zeros) → zeros
activate(X) → X

Rewrite Strategy: FULL

(1) DecreasingLoopProof (EQUIVALENT transformation)

The following loop(s) give(s) rise to the lower bound Ω(n1):
The rewrite sequence
incr(cons(X, n__incr(X37_1))) →+ cons(s(X), n__incr(incr(X37_1)))
gives rise to a decreasing loop by considering the right hand sides subterm at position [1,0].
The pumping substitution is [X37_1 / cons(X, n__incr(X37_1))].
The result substitution is [ ].

(2) BOUNDS(n^1, INF)

(3) RenamingProof (EQUIVALENT transformation)

Renamed function symbols to avoid clashes with predefined symbol.

(4) Obligation:

Runtime Complexity Relative TRS:
The TRS R consists of the following rules:

incr(nil) → nil
incr(cons(X, L)) → cons(s(X), n__incr(activate(L)))
adx(nil) → nil
adx(cons(X, L)) → incr(cons(X, n__adx(activate(L))))
natsadx(zeros)
zeroscons(0', n__zeros)
head(cons(X, L)) → X
tail(cons(X, L)) → activate(L)
incr(X) → n__incr(X)
adx(X) → n__adx(X)
zerosn__zeros
activate(n__incr(X)) → incr(activate(X))
activate(n__adx(X)) → adx(activate(X))
activate(n__zeros) → zeros
activate(X) → X

S is empty.
Rewrite Strategy: FULL

(5) TypeInferenceProof (BOTH BOUNDS(ID, ID) transformation)

Infered types.

(6) Obligation:

TRS:
Rules:
incr(nil) → nil
incr(cons(X, L)) → cons(s(X), n__incr(activate(L)))
adx(nil) → nil
adx(cons(X, L)) → incr(cons(X, n__adx(activate(L))))
natsadx(zeros)
zeroscons(0', n__zeros)
head(cons(X, L)) → X
tail(cons(X, L)) → activate(L)
incr(X) → n__incr(X)
adx(X) → n__adx(X)
zerosn__zeros
activate(n__incr(X)) → incr(activate(X))
activate(n__adx(X)) → adx(activate(X))
activate(n__zeros) → zeros
activate(X) → X

Types:
incr :: nil:cons:n__incr:n__adx:n__zeros → nil:cons:n__incr:n__adx:n__zeros
nil :: nil:cons:n__incr:n__adx:n__zeros
cons :: s:0' → nil:cons:n__incr:n__adx:n__zeros → nil:cons:n__incr:n__adx:n__zeros
s :: s:0' → s:0'
n__incr :: nil:cons:n__incr:n__adx:n__zeros → nil:cons:n__incr:n__adx:n__zeros
activate :: nil:cons:n__incr:n__adx:n__zeros → nil:cons:n__incr:n__adx:n__zeros
adx :: nil:cons:n__incr:n__adx:n__zeros → nil:cons:n__incr:n__adx:n__zeros
n__adx :: nil:cons:n__incr:n__adx:n__zeros → nil:cons:n__incr:n__adx:n__zeros
nats :: nil:cons:n__incr:n__adx:n__zeros
zeros :: nil:cons:n__incr:n__adx:n__zeros
0' :: s:0'
n__zeros :: nil:cons:n__incr:n__adx:n__zeros
head :: nil:cons:n__incr:n__adx:n__zeros → s:0'
tail :: nil:cons:n__incr:n__adx:n__zeros → nil:cons:n__incr:n__adx:n__zeros
hole_nil:cons:n__incr:n__adx:n__zeros1_0 :: nil:cons:n__incr:n__adx:n__zeros
hole_s:0'2_0 :: s:0'
gen_nil:cons:n__incr:n__adx:n__zeros3_0 :: Nat → nil:cons:n__incr:n__adx:n__zeros
gen_s:0'4_0 :: Nat → s:0'

(7) OrderProof (LOWER BOUND(ID) transformation)

Heuristically decided to analyse the following defined symbols:
incr, activate, adx

They will be analysed ascendingly in the following order:
incr = activate
incr = adx
activate = adx

(8) Obligation:

TRS:
Rules:
incr(nil) → nil
incr(cons(X, L)) → cons(s(X), n__incr(activate(L)))
adx(nil) → nil
adx(cons(X, L)) → incr(cons(X, n__adx(activate(L))))
natsadx(zeros)
zeroscons(0', n__zeros)
head(cons(X, L)) → X
tail(cons(X, L)) → activate(L)
incr(X) → n__incr(X)
adx(X) → n__adx(X)
zerosn__zeros
activate(n__incr(X)) → incr(activate(X))
activate(n__adx(X)) → adx(activate(X))
activate(n__zeros) → zeros
activate(X) → X

Types:
incr :: nil:cons:n__incr:n__adx:n__zeros → nil:cons:n__incr:n__adx:n__zeros
nil :: nil:cons:n__incr:n__adx:n__zeros
cons :: s:0' → nil:cons:n__incr:n__adx:n__zeros → nil:cons:n__incr:n__adx:n__zeros
s :: s:0' → s:0'
n__incr :: nil:cons:n__incr:n__adx:n__zeros → nil:cons:n__incr:n__adx:n__zeros
activate :: nil:cons:n__incr:n__adx:n__zeros → nil:cons:n__incr:n__adx:n__zeros
adx :: nil:cons:n__incr:n__adx:n__zeros → nil:cons:n__incr:n__adx:n__zeros
n__adx :: nil:cons:n__incr:n__adx:n__zeros → nil:cons:n__incr:n__adx:n__zeros
nats :: nil:cons:n__incr:n__adx:n__zeros
zeros :: nil:cons:n__incr:n__adx:n__zeros
0' :: s:0'
n__zeros :: nil:cons:n__incr:n__adx:n__zeros
head :: nil:cons:n__incr:n__adx:n__zeros → s:0'
tail :: nil:cons:n__incr:n__adx:n__zeros → nil:cons:n__incr:n__adx:n__zeros
hole_nil:cons:n__incr:n__adx:n__zeros1_0 :: nil:cons:n__incr:n__adx:n__zeros
hole_s:0'2_0 :: s:0'
gen_nil:cons:n__incr:n__adx:n__zeros3_0 :: Nat → nil:cons:n__incr:n__adx:n__zeros
gen_s:0'4_0 :: Nat → s:0'

Generator Equations:
gen_nil:cons:n__incr:n__adx:n__zeros3_0(0) ⇔ nil
gen_nil:cons:n__incr:n__adx:n__zeros3_0(+(x, 1)) ⇔ cons(0', gen_nil:cons:n__incr:n__adx:n__zeros3_0(x))
gen_s:0'4_0(0) ⇔ 0'
gen_s:0'4_0(+(x, 1)) ⇔ s(gen_s:0'4_0(x))

The following defined symbols remain to be analysed:
activate, incr, adx

They will be analysed ascendingly in the following order:
incr = activate
incr = adx
activate = adx

(9) NoRewriteLemmaProof (LOWER BOUND(ID) transformation)

Could not prove a rewrite lemma for the defined symbol activate.

(10) Obligation:

TRS:
Rules:
incr(nil) → nil
incr(cons(X, L)) → cons(s(X), n__incr(activate(L)))
adx(nil) → nil
adx(cons(X, L)) → incr(cons(X, n__adx(activate(L))))
natsadx(zeros)
zeroscons(0', n__zeros)
head(cons(X, L)) → X
tail(cons(X, L)) → activate(L)
incr(X) → n__incr(X)
adx(X) → n__adx(X)
zerosn__zeros
activate(n__incr(X)) → incr(activate(X))
activate(n__adx(X)) → adx(activate(X))
activate(n__zeros) → zeros
activate(X) → X

Types:
incr :: nil:cons:n__incr:n__adx:n__zeros → nil:cons:n__incr:n__adx:n__zeros
nil :: nil:cons:n__incr:n__adx:n__zeros
cons :: s:0' → nil:cons:n__incr:n__adx:n__zeros → nil:cons:n__incr:n__adx:n__zeros
s :: s:0' → s:0'
n__incr :: nil:cons:n__incr:n__adx:n__zeros → nil:cons:n__incr:n__adx:n__zeros
activate :: nil:cons:n__incr:n__adx:n__zeros → nil:cons:n__incr:n__adx:n__zeros
adx :: nil:cons:n__incr:n__adx:n__zeros → nil:cons:n__incr:n__adx:n__zeros
n__adx :: nil:cons:n__incr:n__adx:n__zeros → nil:cons:n__incr:n__adx:n__zeros
nats :: nil:cons:n__incr:n__adx:n__zeros
zeros :: nil:cons:n__incr:n__adx:n__zeros
0' :: s:0'
n__zeros :: nil:cons:n__incr:n__adx:n__zeros
head :: nil:cons:n__incr:n__adx:n__zeros → s:0'
tail :: nil:cons:n__incr:n__adx:n__zeros → nil:cons:n__incr:n__adx:n__zeros
hole_nil:cons:n__incr:n__adx:n__zeros1_0 :: nil:cons:n__incr:n__adx:n__zeros
hole_s:0'2_0 :: s:0'
gen_nil:cons:n__incr:n__adx:n__zeros3_0 :: Nat → nil:cons:n__incr:n__adx:n__zeros
gen_s:0'4_0 :: Nat → s:0'

Generator Equations:
gen_nil:cons:n__incr:n__adx:n__zeros3_0(0) ⇔ nil
gen_nil:cons:n__incr:n__adx:n__zeros3_0(+(x, 1)) ⇔ cons(0', gen_nil:cons:n__incr:n__adx:n__zeros3_0(x))
gen_s:0'4_0(0) ⇔ 0'
gen_s:0'4_0(+(x, 1)) ⇔ s(gen_s:0'4_0(x))

The following defined symbols remain to be analysed:
incr, adx

They will be analysed ascendingly in the following order:
incr = activate
incr = adx
activate = adx

(11) NoRewriteLemmaProof (LOWER BOUND(ID) transformation)

Could not prove a rewrite lemma for the defined symbol incr.

(12) Obligation:

TRS:
Rules:
incr(nil) → nil
incr(cons(X, L)) → cons(s(X), n__incr(activate(L)))
adx(nil) → nil
adx(cons(X, L)) → incr(cons(X, n__adx(activate(L))))
natsadx(zeros)
zeroscons(0', n__zeros)
head(cons(X, L)) → X
tail(cons(X, L)) → activate(L)
incr(X) → n__incr(X)
adx(X) → n__adx(X)
zerosn__zeros
activate(n__incr(X)) → incr(activate(X))
activate(n__adx(X)) → adx(activate(X))
activate(n__zeros) → zeros
activate(X) → X

Types:
incr :: nil:cons:n__incr:n__adx:n__zeros → nil:cons:n__incr:n__adx:n__zeros
nil :: nil:cons:n__incr:n__adx:n__zeros
cons :: s:0' → nil:cons:n__incr:n__adx:n__zeros → nil:cons:n__incr:n__adx:n__zeros
s :: s:0' → s:0'
n__incr :: nil:cons:n__incr:n__adx:n__zeros → nil:cons:n__incr:n__adx:n__zeros
activate :: nil:cons:n__incr:n__adx:n__zeros → nil:cons:n__incr:n__adx:n__zeros
adx :: nil:cons:n__incr:n__adx:n__zeros → nil:cons:n__incr:n__adx:n__zeros
n__adx :: nil:cons:n__incr:n__adx:n__zeros → nil:cons:n__incr:n__adx:n__zeros
nats :: nil:cons:n__incr:n__adx:n__zeros
zeros :: nil:cons:n__incr:n__adx:n__zeros
0' :: s:0'
n__zeros :: nil:cons:n__incr:n__adx:n__zeros
head :: nil:cons:n__incr:n__adx:n__zeros → s:0'
tail :: nil:cons:n__incr:n__adx:n__zeros → nil:cons:n__incr:n__adx:n__zeros
hole_nil:cons:n__incr:n__adx:n__zeros1_0 :: nil:cons:n__incr:n__adx:n__zeros
hole_s:0'2_0 :: s:0'
gen_nil:cons:n__incr:n__adx:n__zeros3_0 :: Nat → nil:cons:n__incr:n__adx:n__zeros
gen_s:0'4_0 :: Nat → s:0'

Generator Equations:
gen_nil:cons:n__incr:n__adx:n__zeros3_0(0) ⇔ nil
gen_nil:cons:n__incr:n__adx:n__zeros3_0(+(x, 1)) ⇔ cons(0', gen_nil:cons:n__incr:n__adx:n__zeros3_0(x))
gen_s:0'4_0(0) ⇔ 0'
gen_s:0'4_0(+(x, 1)) ⇔ s(gen_s:0'4_0(x))

The following defined symbols remain to be analysed:
adx

They will be analysed ascendingly in the following order:
incr = activate
incr = adx
activate = adx

(13) NoRewriteLemmaProof (LOWER BOUND(ID) transformation)

Could not prove a rewrite lemma for the defined symbol adx.

(14) Obligation:

TRS:
Rules:
incr(nil) → nil
incr(cons(X, L)) → cons(s(X), n__incr(activate(L)))
adx(nil) → nil
adx(cons(X, L)) → incr(cons(X, n__adx(activate(L))))
natsadx(zeros)
zeroscons(0', n__zeros)
head(cons(X, L)) → X
tail(cons(X, L)) → activate(L)
incr(X) → n__incr(X)
adx(X) → n__adx(X)
zerosn__zeros
activate(n__incr(X)) → incr(activate(X))
activate(n__adx(X)) → adx(activate(X))
activate(n__zeros) → zeros
activate(X) → X

Types:
incr :: nil:cons:n__incr:n__adx:n__zeros → nil:cons:n__incr:n__adx:n__zeros
nil :: nil:cons:n__incr:n__adx:n__zeros
cons :: s:0' → nil:cons:n__incr:n__adx:n__zeros → nil:cons:n__incr:n__adx:n__zeros
s :: s:0' → s:0'
n__incr :: nil:cons:n__incr:n__adx:n__zeros → nil:cons:n__incr:n__adx:n__zeros
activate :: nil:cons:n__incr:n__adx:n__zeros → nil:cons:n__incr:n__adx:n__zeros
adx :: nil:cons:n__incr:n__adx:n__zeros → nil:cons:n__incr:n__adx:n__zeros
n__adx :: nil:cons:n__incr:n__adx:n__zeros → nil:cons:n__incr:n__adx:n__zeros
nats :: nil:cons:n__incr:n__adx:n__zeros
zeros :: nil:cons:n__incr:n__adx:n__zeros
0' :: s:0'
n__zeros :: nil:cons:n__incr:n__adx:n__zeros
head :: nil:cons:n__incr:n__adx:n__zeros → s:0'
tail :: nil:cons:n__incr:n__adx:n__zeros → nil:cons:n__incr:n__adx:n__zeros
hole_nil:cons:n__incr:n__adx:n__zeros1_0 :: nil:cons:n__incr:n__adx:n__zeros
hole_s:0'2_0 :: s:0'
gen_nil:cons:n__incr:n__adx:n__zeros3_0 :: Nat → nil:cons:n__incr:n__adx:n__zeros
gen_s:0'4_0 :: Nat → s:0'

Generator Equations:
gen_nil:cons:n__incr:n__adx:n__zeros3_0(0) ⇔ nil
gen_nil:cons:n__incr:n__adx:n__zeros3_0(+(x, 1)) ⇔ cons(0', gen_nil:cons:n__incr:n__adx:n__zeros3_0(x))
gen_s:0'4_0(0) ⇔ 0'
gen_s:0'4_0(+(x, 1)) ⇔ s(gen_s:0'4_0(x))

No more defined symbols left to analyse.